Battery management system

ABSTRACT

The present application describes, among other things, a battery management system. The battery management system includes a computing device and first and second battery unit monitoring modules. The computing device includes an output data request port and an input data port. Each battery unit monitoring module is connected in parallel to the input data port of the computing device. In response to a data request from the output data request port of the computing device, the first battery unit monitoring module transmits data of the first battery unit to the input data port of the computing device, and transmits a data request to the second battery unit monitoring module. In response to the data request from the first battery unit monitoring module, the second battery unit monitoring module transmits data of the second battery unit to the input data port of the computing device.

BACKGROUND

Current battery management systems obtain data about individual batteryunits in a battery system. The systems reserve addresses forcommunication with battery unit sensors and/or battery units. Whensensors transmit data about battery units to the management system, thesensors include the address of the battery unit. Such a system mayrequire significant amounts or resources and complex arrangements forconnecting the components of the system. Additionally, current systemsfor battery management may require complex, expensive systems fordetecting potentially hazardous connections between battery units andtheir enclosure, such as a chassis in an electric vehicle.

SUMMARY

A battery management system can include battery unit monitoring modulesfor obtaining data about battery units in a battery pack. A computingdevice can obtain the data by sending a data request to the firstmonitoring module. The first monitoring module obtains and transmitsdata about its connected battery unit to the computing device and sendsa data request to the second monitoring module. The second monitoringmodule obtains and transmits data about its connected battery to thecomputing device and sends a data request to the next monitoring module.Each successive monitoring module performs the same steps until all themonitoring modules have sent data about their connected battery units tothe computing device. Thus, the computing device needs solely a datarequest port and input data port(s) to obtain the data for a batterypack.

In one aspect, the present disclosure describes a battery managementsystem. The battery management system includes a computing device withan output data request port and an input data port. The batterymanagement system also includes first and second battery unit monitoringmodules, each battery unit monitoring module connected to the input dataport of the computing device. In response to a data request from theoutput data request port of the computing device, the first battery unitmonitoring module transmits data of the first battery unit to the inputdata port of the computing device, and transmits a data request to thesecond battery unit monitoring module. In response to the data requestfrom the first battery unit monitoring module, the second battery unitmonitoring module transmits data of the second battery unit to the inputdata port of the computing device.

The first battery unit monitoring module can connect to a first batteryunit in a battery pack of an electric vehicle. The battery managementsystem can also include wiring connecting the computing device to thebattery unit monitoring modules. Because the battery units in a batterypack can be wired in series, the physical locations of the positive andnegative terminals arranged in an alternating fashion, the secondbattery unit monitoring module is oriented in an opposite direction fromthe first battery unit monitoring module.

The first battery unit monitoring module can include ananalog-to-digital converter. The analog-to-digital converter can measurea voltage of the first battery unit. The first battery unit monitoringmodule can include a temperature monitoring device that measures atemperature of the first battery unit. The temperature can be expressedas a voltage which is applied to an input of the analog-to-digitalconverter. Data of the first battery unit can be a voltage and atemperature of the first battery unit. Data of the second battery unitcan be a voltage and a temperature of the second battery unit.

The computing device can scan the first and second battery unitmonitoring modules to determine a number of battery unit monitoringmodules in the battery management system. The computing device cantransmit a second data request to the first battery unit monitoringmodule after the computing device has not received data on the inputdata port for a predetermined period of time. The predetermined periodof time may be 20 ms. The computing device can include ananalog-to-digital convertor that measures a voltage across the first andsecond battery units. The computing device can include ananalog-to-digital convertor that measures a current flowing in the firstand second battery units.

The computing device can output an alarm when an error condition isdetected. The error condition can be a high voltage condition, a lowvoltage condition, a high current condition, a high temperaturecondition, or a connection fault condition. The computing device canshut off a battery charger when the computing device detects a highvoltage condition across the first and second battery units. Thecomputing device can shut off a motor controller when the computingdevice detects a low voltage condition across the first and secondbattery units.

The battery management system can include a monitor, such as a videomonitor, that displays the data of the first and second battery units.The battery management system can include a connection fault detectorthat detects a connection between a node at a zero voltage referencelevel and the first and second battery units. The battery managementsystem can include one or more battery unit balancing systems, eachsystem balancing charge in a battery unit.

In another aspect, the present disclosure describes a battery managementsystem with a computing device and first and second battery unitmonitoring modules. The computing device includes a first output datarequest port and an input data port. The first battery unit monitoringmodule includes a first input data request port connected to the outputdata request port of the controller, a first output data port connectedto the input data port of the controller, and a second output datarequest port. The second battery unit monitoring module includes asecond input data request port connected to the second output datarequest port of the first battery unit monitoring module, and a secondoutput data port connected to the input data port of the controller.

In another aspect, the present disclosure describes a method of managinga battery. The method includes transmitting, by a computing device, afirst data request to a first battery unit monitoring module. The methodalso includes transmitting, by the first battery unit monitoring module,data of a first battery unit to an input data port of the computingdevice in response to the first data request. The method also includestransmitting, by the first battery unit monitoring module, a second datarequest to a second battery unit monitoring module. The method alsoincludes transmitting, by the second battery unit monitoring module,data of a second battery unit to the input data port of the computingdevice in response to the second data request.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, aspects, features, and advantages ofthe present invention will become more apparent and better understood byreferring to the following description taken in conjunction with theaccompanying drawings, in which:

FIG. 1 is a block diagram depicting an exemplary embodiment of a batterymanagement system connected to a battery pack;

FIG. 2 is a block diagram depicting an exemplary arrangement of batteryunit monitoring modules of the battery management system with respect tothe battery units of the battery pack;

FIG. 3 is a block diagram depicting connections within the batterymanagement system between the computing device and the battery unitmonitoring modules;

FIG. 4 is a diagram depicting connections between battery unitmonitoring modules;

FIG. 5 is a hybrid block and circuit diagram depicting an exemplarybattery unit monitoring module;

FIG. 6 is a circuit diagram of an exemplary embodiment of a battery unitmonitoring module;

FIG. 7 is a circuit diagram of an exemplary embodiment of the interfacefor a computing device;

FIG. 8 is a circuit diagram of an exemplary embodiment of a battery unitbalancing system in a battery unit monitoring module;

FIG. 9 is a block diagram depicting an exemplary embodiment of thecomputing device of the battery management system;

FIG. 10 is a block diagram depicting an exemplary embodiment of thealarm output system of the computing device;

FIG. 11 is a circuit diagram depicting an exemplary embodiment of thealarm output system of the computing device;

FIG. 12 is a block diagram depicting an exemplary embodiment of theconnection fault detection system of the computing device;

FIG. 13 is a circuit diagram depicting an exemplary embodiment of theconnection fault detection system of the computing device;

FIG. 14 is a circuit diagram depicting an exemplary embodiment of thepack voltage and pack current input systems of the computing device;

FIG. 15 is a circuit diagram depicting an exemplary embodiment of theprocessor of the computing device;

FIG. 16 is a circuit diagram depicting exemplary embodiments of powersupplies used with the battery management system;

FIG. 17 is a circuit diagram depicting an isolated power supply to powerthe circuits of FIG. 14; and

FIG. 18 is a circuit diagram depicting exemplary embodiments of acontroller area network (CAN) interface.

DETAILED DESCRIPTION

The present disclosure describes, among other things, certainembodiments of a battery management system. The management systemobtains and displays data about battery units in a battery pack. Themanagement system can monitor the voltage and temperature of theindividual battery units and/or the entire battery pack. If themanagement system discovers any of the battery units pose a concern(e.g., the voltage is over or under limits, or the battery unit isoverheating), the system can take measures to prevent damage to itselfor the battery pack or to alleviate the concern. The system can alsotake comparable measures if the system detects a connection between anyof the battery units and ground. Thus, the battery management system canmaintain the consistent operation of the system the battery pack powers,such as an electric vehicle.

Referring now to FIG. 1, a block diagram of an exemplary embodiment of abattery management system 100 connected to a battery pack 190 is shownand described. The battery management system 100 includes battery unitmonitoring modules 105 (e.g., sense boards), a computing device 110, anda display 115 (e.g. a monitor such as an LCD monitor or a monitorincorporated into another device, such as a DVD player). The computingdevice 110 can measure voltage and/or current for the entire batterypack 190 and output the data to the display 115. In various embodiments,the computing device 110 can determine the state of charge of thebattery pack 190 by measuring the amount of current that flows in or outof the battery pack 190. The battery pack 190 can integrate the amountof current to determine the state of charge. In some embodiments, whenthe battery pack 190 reaches a minimum, predetermined voltage, thecomputing device 110 can set the pack's 190 state of charge to about 0%.When the battery pack 190 reaches a maximum, predetermined voltage, thecomputing device 110 can set the state of charge to about 100%.

In some embodiments, the battery pack 190 may include a plurality ofbattery units 195 (e.g., battery cells). Each battery unit may include abattery cell or a plurality of battery cells. The battery pack 190 canconnect to an external load 198, such as a motor for an electricvehicle. Each battery unit monitoring modules 105 of the managementsystem 100 can connect to a battery unit 195. A monitoring module 105can obtain data, such as voltage and/or temperature, for the batteryunit 195 connected to the module 105. The monitoring modules 105 cantransmit the data to the computing device 110, which can output the datato the display 115.

In some embodiments, the computing device 110 may be configured tooperate with a predetermined, fixed number of battery unit monitoringmodules 105. In some embodiments, the computing device 110 may beconfigured to scan the modules 105 to determine the number of modules105 present. The computing device 110 can scan the battery unitmonitoring modules 105 to determine the number of monitoring modules 105in the system 100. For example, in some embodiments, the computingdevice 110 can output a scan signal to the first monitoring module 105.In response, the monitoring module 105 can return battery unit voltageand temperature data to the computing device 110 and can output a scansignal to a successive monitoring module 105. In some embodiments, themonitoring module 105 can also return battery unit voltage andtemperature data to the computing device 110, and can output a scansignal to the next module 105. Thus, the computing device 110 can countthe number of monitoring modules 105 by the number of voltage andtemperature data packets received. Further, the computing device 110 cannumber a monitoring module 105 and/or battery unit 195 based on themodule's 105 or unit's 195 position in the order of scan signalsreceived. In some embodiments, a user can configure the computing device110 to set the number of monitoring modules 105 or to instruct thedevice 110 to scan the modules 105 and obtain the number of modulesitself.

The computing device 110 can detect error conditions for individualbattery units 195 and/or the entire battery pack 190. Exemplary errorconditions can include conditions such as high voltage conditions, lowvoltage conditions, high current conditions, and high temperaturecondition. Another exemplary error can be a connection fault condition,e.g., a connection between at least one battery unit 195 and a contactpoint with a zero-voltage reference level, such as a chassis of anelectric vehicle.

When an error is detected, the computing device 110 can initiate ameasure based on the error condition. For example, if the computingdevice 110 detects a high voltage condition for the entire battery pack190, the computing device 110 can inactivate a device that charges thepack 190 (not shown). In another example, if the computing device 110detects a first low voltage condition, the computing device 110 canoutput a low voltage warning to the display 115. If the battery pack's190 voltage drops further, triggering a second low voltage condition,the device 110 can inactivate a load connected to the battery pack 190,such as a motor controller of an electric vehicle.

Referring now to FIG. 2, a block diagram of an exemplary arrangement ofbattery unit monitoring modules 105 and battery units 195 in a pack 190is shown and described. In this embodiment, the monitoring modules 105are connected to the battery units 195, which are connected in series.Each monitoring module 105 can be connected to a single battery unit195. The battery unit 195 can supply the connected monitoring module 105with power for performing its operations.

FIG. 3 is a block diagram depicting connections within the batterymanagement system 100 between the computing device 110 and the batteryunit monitoring modules 105. The computing device 110 includes an outputdata request port (also referred to herein as an “enable output”) and aninput data port. Each monitoring module 105 includes an output dataport, an input data request port (also referred to herein as an “enableinput”), and an output data request port. Each monitoring module's 105output data port is connected in parallel to the computing device's 110input data port.

The computing device's 110 output data request port is connected to thefirst one of the battery unit monitoring module's 105 a input datarequest port. The monitoring module's 105 a output data request port isconnected to the input data request port of the successive monitoringmodule 105 b. In turn, the monitoring module's 105 b output data requestis connected to the input data request port of the next monitoringmodule 105 c. The remaining monitoring modules 105 are connected in thesame manner. The communications of the computing device 110 and batteryunit monitoring modules 105 described herein are transmitted from andreceived at these ports, as would be understood by one of ordinary skillin the art. Further, in various embodiments, the computing device 110and monitoring modules 105 include voltage and ground connections suchthat the computing device 110 can provide power (e.g., 12V) and groundto the monitoring modules 105.

In operation, to obtain data about the battery units 195, the computingdevice 110 sends a data request signal (also referred to herein as an“enable signal” or an “enable pulse”) to the first battery unitmonitoring module 105 a. In response, the monitoring module 105 atransmits data about a connected battery unit 195 a to the computingdevice 110. After the module 105 a finishes transmitting data, themodule 105 a sends a data request signal to the second battery unitmonitoring module 105 b. In response, the monitoring module 105 btransmits data about a connected battery unit 195 b to the computingdevice 110. After the module 105 b finishes transmitting data, themodule 105 b sends a data request signal to the third battery unitmonitoring module 105 c, and the process continues for the rest of themonitoring modules 105.

Using this communication system, the computing device 110 can match datawith a battery unit according to the order in which the device 110receives data. Thus, the first set of data can be matched to the firstbattery unit 195 a, the second set of data to the second unit 195 b, andso forth. In this manner, the computing device 110 uses few ports forobtaining data and matching the data to battery units 195. In someembodiments, such a battery management system 100 may eliminate theneeds for dedicated addressing ports, addressing switches, and/orjumpers.

When the computing device 110 does not receive data from a battery unit195 for at least a predetermined period of time (e.g., 20 ms, althoughother times may be used), the computing device 110 can conclude thatdata collection for the battery pack 190 has been completed. Thecomputing device 110 can obtain another set of data by transmittinganother data request to the first battery unit monitoring module 105 a,thereby restarting the data collection process. In some embodiments, thecomputing device 110 can collect data about the battery units 195, e.g.,once per 1-2 seconds.

In some embodiments, the computing device 110 can first compare thenumber of data received with the number of monitoring modules 105. Ifthe numbers match, the computing device 110 can determine all themonitoring modules 105 are operational and continue obtaining data aboutthe battery units 195. If the numbers do not match, the computing device110 can conclude that at least one monitoring module 105 and/or batteryunit 195 is not operational. The computing device 110 can generate andoutput an error message to the display 115. Since the modules 105transmit data to the computing device 110 in sequential order, thecomputing device 110 can identify the non-operational module 105 or unit195 according to the number of data received. In this manner, thecomputing device 110 can inform a user of physical locations of faultsin the monitoring modules 105 or battery pack 190, allowing the user totroubleshoot problems.

Regarding the individual monitoring modules 105, in some embodiments, amodule 105 can measure data for a connected battery unit 195 uponreceiving a data request signal. In some embodiments, a module 105 canmeasure and store data in a buffer. Then, when the module 105 receivesthe data request signal, the module 105 may access the buffer and maytransfer the data stored therein to the computing device 110.

The monitoring module 105 can transmit the data to the computing device110 in a human readable form. The monitoring modules 105 can transmitthe data via an asynchronous serial protocol, such as protocols used forRS-232 or USB connections. The monitoring modules 105 can transmit thedata at any rate and with any number of start and/or stop bits. Forexample, a module 105 can transmit at 9600 Baud with 1 start bit and 1stop bit.

Referring now to FIG. 4, a diagram depicting connections between batteryunit monitoring modules 105 is shown and described. In some embodiments,wiring 400 (e.g., ribbon cable, 4-wire round shape harnesses) can beused to connect the monitoring modules 105 to one another. In someembodiments, for each monitoring module 105, the output data port can belocated in the center of a module's 105 interface. In some embodiments,the input data request port and the output data request port can besymmetrically located on opposite sides of the output data port. Byorienting each battery unit monitoring module 105 in an oppositedirection from adjacent modules 105, wiring 400 can connect the outputdata request port of one module 105 to the input data request port ofthe successive module 105. Due to the orientation of the ports, thewiring 400 need not be twisted or folded. Further, the wiring 400 canconnect all the output data ports to the input data port of thecomputing device 110. When a monitoring module 105 transmits data forits connected battery unit 195, the data can be sent across each portionof wiring 400 connecting the monitoring modules 105 before the dataarrives at the computing device 110.

FIG. 5 is a hybrid block and circuit diagram depicting an exemplarybattery unit monitoring module 105. The monitoring module 105 includesterminals 502 and 503, a microprocessor 505, a reverse connectionprotection system 510, a battery unit balancing system 515, a voltageregulator 520, resistors 525, 526 for sampling a battery unit's 195voltage, and a temperature monitoring device 527 (e.g., a thermistor)for sampling a battery unit's 195 temperature. The monitoring module 105also includes a receiver 540 for receiving a data request signal from acomputing device 110 or monitoring module 105, a driver 541 fortransmitting data of the connected battery unit 195 to the computingdevice 110, and a driver 542 for transmitting a data request signal toanother monitoring module 105.

A battery unit 195 connects to the monitoring module 105 at terminals502 and 503. Thus, the battery unit 195 applies its voltage to thereverse connection protection system 510. If the voltage is sufficientlyhigh, the protection system 510 conducts and applies the voltage to thevoltage regulator 520, resistors 525, 526, temperature monitoring device527, and balancer 515. If the battery unit 195 is improperly connectedto the terminals 502, 503 (e.g., with incorrect polarity), the reverseconnection protection system 510 does not conduct, thereby protectingthe module 105 from potentially damaging voltages.

When the protection system 510 conducts, the voltage regulator 520 candraw upon the battery unit's 195 voltage to supply a stable voltage(e.g., 2V) for the monitoring module 105. In particular, this voltagecan power the microprocessor 505. The microprocessor 505 can obtain thebattery unit's 195 voltage via resistors 525 and 526 and/or thetemperature via temperature monitoring device 527. In some embodiments,the microprocessor 505 can sample the values on the resistors 525, 526and temperature monitoring device 527 to obtain the voltage andtemperature. The microprocessor 505 can store the values in an internalmemory.

In some embodiments, when the receiver 540 receives a data requestsignal, the receiver 540 transmits the signal to the microprocessor 505.In response, the microprocessor 505 obtains the voltage and temperatureof the battery unit 195, either by measuring the values on the resistors525, 526 and temperature monitoring device 527 or by accessing storedvalues in an internal memory. The microprocessor 505 transmits thevalues to the driver 541, which drives the values back to the computingdevice 110 via, for example, asynchronous serial ASCII communication. Atsubstantially the same time, the microprocessor 505 can generate andoutput a data request signal to the driver 542. The driver 542 drivesthe data request signal to the next monitoring module 105 for obtainingdata about its connected battery unit 195.

Referring now to FIG. 6, a circuit diagram of an exemplary embodiment ofa battery unit monitoring module 105 is shown and described. In thisembodiment, the terminals 602, 603 correspond to the terminals 502, 503of FIG. 5. The protection system 510 can be a metal-oxide-semiconductorfield effect transistor (MOSFET) 605, such as a p-type MOSFET. Terminalsof the battery unit 195 can connect to both the source and base of theMOSFET 605. When the battery unit's 195 voltage is sufficiently high,the voltage activates the MOSFET 605. As the MOSFET 605 conducts, thebattery unit 195 applies its voltage to the voltage regulator 610. Ifthe battery unit's 195 voltage is insufficiently high, or its polarityis reversed, the MOSFET 605 does not conduct, thereby protecting themodule 105 from potentially damaging voltages. In this manner, theMOSFET 605 can operate as a low voltage drop diode.

The voltage regulator 610 can be an integrated circuit (e.g., a LP2951)which can use a transistor 611, two operational amplifiers 612, 613, andtwo resistors 614, 615 to regulate a voltage. Resistors 616, 617 candivide the output of the voltage regulator 610 to, for example, 2V. Thedivided voltage can be fed back to the error amplifier 612, and theregulator 610 can adjust the output accordingly. In this manner, thevoltage regulator 610 can output a substantially constant voltage. Thecapacitor 618 can filter the divided voltage before supplying thevoltage to a microprocessor 620. Further, a power supply can power aclock generator (with capacitors 623, 624, an oscillator 625, resistor626, and buffers 627, 628) to generate a clock signal. The clock signalcan be provided to the microprocessor 620 for its operations.

The battery unit 195 can connect, via the terminals 602, 603, toresistors 629, 630 and a thermistor 631. A node between the resistors629, 630 and a node adjacent to the thermistor 631 can connect to inputports of the microprocessor 620, which in turn can connect to aninternal analog-to-digital converter (also referred to herein as A/Dconverter). One of the inputs to the internal A/D converter can samplethe voltage between the resistors 629, 630 to determine the voltage ofthe battery unit 195. Another input to the internal A/D converter cansample the temperature of the battery unit 195, expressed as a voltage,via the thermistor 631. The microprocessor 620 can store the voltage andtemperature in an internal memory. In some embodiments, themicroprocessor 620 connects to separate A/D converters that sample thevoltage and temperature.

The microprocessor 620 can receive a data request signal via thereceiver 640 (e.g., an optocoupler). In response, the microprocessor 620can obtain the voltage and temperature of the battery unit 195 andtransmit the values to the driver 641, which drives the values back tothe computing device 110. At substantially the same time, themicroprocessor 620 can generate and output a data request signal. Thedata request signal can connect to the base of a transistor 650. Whenthe signal turns on the transistor, a current flows through the driver642 to output another data request signal to the next monitoring module105.

FIG. 7 is a circuit diagram of an exemplary embodiment of an interface700 for the computing device 110. The interface 700 can be used by thecomputing device 110 for communicating with to battery unit monitoringmodules 105. The computing device 110 can apply a data request signal tothe gate of a transistor 705, such as a metal-oxide-semiconductorfield-effect transistor (MOSFET). In response, the transistor 705conducts and current flows from the voltage source 710 through theresistors 715, 716. The voltage that develops at the node between theresistors 715, 716 activates the transistor 720. As a result, currentflows from the voltage source 710 through the transistor 720 andresistor 721 to output a data request signal (e.g., a logic high signal)for the first battery unit monitoring module 105.

The circuit can receive a data signal (e.g., as 12V signal) through theTX pins on a connector. Resistors 725, 726 can divide the data signal,and the Zener diode 730 can clamp the data signal to a voltagesubstantially equal to the voltage supplied to the battery unitmonitoring module's microprocessor (e.g., 3.3V). An inverter 735, suchas a Schmitt Trigger inverter, can eliminate noise and sharpen the riseand fall times of the divided and/or clamped data signal before passingthe data signal to the microprocessor of the computing device 110.

In various embodiments, the interface 700 can be located on the sameboard as the other components of the computing device 110. In someembodiments, the communication interface can be isolated from thoseother components.

FIG. 8 is a circuit diagram of an exemplary embodiment of a balancingunit 800 of a battery unit monitoring module 105. The operation of thebalancing unit is described in U.S. application Ser. No. 12/939,889,entitled “Battery Unit Balancing System,” filed Nov. 4, 2010, thecontents of which are hereby incorporated by reference in theirentirety.

FIG. 9 is a block diagram depicting an exemplary embodiment of thecomputing device 110 of the battery management system 100. The computingdevice 110 can include a central processing unit (CPU, e.g. 8-coreprocessor) 905 and a memory 910 (e.g., electrically erasableprogrammable read-only memory, or EEPROM serial memory) that stores aprogram with executable instructions. The program can be loaded into thememory 910 from an external device connected via, for example, the businterface 965 or a USB cable. The CPU 905 can load and executeinstructions from the memory 910 to perform its operations. The programmay include configuration data, such as the predetermined number ofbattery unit monitoring modules 105 in the system 100 or the thresholdbattery unit voltage or temperature that would trigger an errorcondition. In some embodiments, the program may obtain the configurationdata from values input by a user of the system 100.

The computing device 110 can use an analog-to-digital (A/D) converter915 to measure the voltage of the battery pack 190. The A/D converter915 can sample the voltage to obtain a value. The computing device 110can use an analog-to-digital (A/D) converter 916 to measure the currentof the battery pack 190. In some embodiments, the A/D converter 916 isconnected to a shunt, which in turn is connected to a terminal of thebattery pack 190 and a terminal of the external load 198. The shunt canbe a resistor that develops a voltage drop proportional to the batterypack's 190 current (e.g., 0.0001 Ohms developing a voltage drop of 0.1mV/A). An amplifier 917 can amplify the value of the current before theA/D converter 916 samples the current. The A/D converters 915, 916 candirect the battery pack voltage and current to an isolation barrier 920controlled by a signal from a connection fault detector 925. In someembodiments, the A/D converters 915, 916 are on the same board as theCPU 905, isolated, and/or both.

The connection fault detector 925 can signal the presence of aconnection between a battery unit 195 and a zero-voltage referencelevel. For example, the zero-voltage reference level can be the batterypack's 190 enclosure or chassis, and the connection between a batteryunit 195 and the chassis would represent a hazard to service personnel.When one or more battery units 195 within the battery pack 190 contactsa point at the zero-voltage reference level, the contact can causecurrent to flow from the battery unit 195. The connection fault detector925 detects the connection and outputs a signal to the CPU 905 whichwill display a warning indicating this connection on the display device115.

The CPU 905 can connect to the battery unit monitoring modules 105 toobtain data about the individual battery units 195, as described inreference to FIGS. 3-5. The CPU 905 can process data about theindividual battery units 195 and/or battery pack 190 to create acomposite video signal. A digital-to-analog (D/A) converter 930 (e.g., a3-bit converter) can produce the composite video signal from digital toanalog format so the signal can be displayed on a display 115.

If the CPU 905 detects an error condition, the CPU 905 can transmit anerror signal to an alarm output system 940. The system 940 can be usedto control a component and/or device that responds to the error signal(e.g., a charger that stops charging the battery pack 190, or a motorcontroller of an electric vehicle that stops discharging the battery).

The computing device 110 can include power supplies 960 (not shown onFIG. 9). The power supplies 960 supply voltages to components of thebattery management system 100. In some embodiments, a power supply 960can include an internal voltage regulator to provide a constant voltage.The power supplies 960 can be isolated from the other components of thecomputing device 110 to prevent damage to the device 110.

The computing device 110 can include an interface 965, such as acontroller area network (CAN) interface. The interface can includeports, such as parallel port pins. The computing device 110 can connectto external devices via an interface (not shown). For example, thedevice 110 can connect to another computing device to receive a programto be stored in the memory 910.

The computing device 110 can include a port 970 for receiving a pageselect signal. A page can correspond to a format for displaying dataabout a battery unit 195 within the battery pack 190. For example, onepage can display the data for the entire pack 190. Another page candisplay the voltages and temperatures of eight, twenty, or any othernumber of battery units 195. Successive pages can display the sameinformation for adjacent sets of battery units 195. The computing device110 can receive the page select signal from a switch mounted in adashboard in an electric vehicle, for example (not shown). In response,the computing device 110 can output the selected page containing batterypack data to the display 115.

FIG. 10 is a block diagram depicting an exemplary embodiment of thealarm output system 940 of the computing device 110. The alarm outputsystem 940 receives an error signal from the computing device 110. Thealarm output system 940 outputs a binary signal according to the errorsignal. If the error signal corresponds to an off signal, the system 940allows current to flow to a ground reference, thereby outputting a logiclow signal (e.g., 0V). If the error signal corresponds to an on signal,the system 940 allows current to flow from a voltage source, such as12V. In some embodiments, the system 940 does not allow current to flowuntil the error signal lasts at least 30 seconds. In this manner, thesystem 940 turns on or off external devices according to the presence ofan error.

FIG. 11 is a circuit diagram depicting an exemplary embodiment of thealarm output system 940 of the computing device 110. The alarm outputsystem 940 includes a voltage source 1101, two resistors 1103, 1104,four transistors (e.g., metal-oxide-semiconductor field-effecttransistors or MOSFETs) 1105, 1106, 1107, 1108 configured to form an Hbridge, and two transistors 1120, 1121 that operate the alarm outputsystem 940. Transistors 1105, 1108 can be of opposite polarity fromtransistors 1106, 1107. The alarm output system 940 can apply one ormore received error signals to the transistors 1120, 1121 and output oneor more command signals corresponding to the error signals at terminals1130, 1131.

In operation, an error signal can be applied to transistor 1120 and/ortransistor 1121. If the computing device 110 detects a low voltagecondition, the device 110 can apply an error signal to transistor 1120.As transistor 1120 conducts, the voltage applied to the gates oftransistors 1107, 1108 by the voltage source 1101 drops. The voltagedifferential between the source and gate of transistor 1107 decreases toturn the transistor 1107 off. The voltage differential between thesource and gate of transistor 1108 increases to turn the transistor 1108on. As transistor 1108 conducts, current flows from the voltage source1101 through the transistor 1108 to the output terminal 1130. Thevoltage that develops on the output terminal 1130 can be used to shutoff a motor controller, by way of example.

If the computing device 110 detects a high voltage condition, a highcurrent condition, or a high temperature condition, the device 110 canapply an error signal to transistor 1121. As transistor 1121 conducts,the voltage applied to the gates of transistors 1105, 1106 by thevoltage source 1101 drops. The voltage differential between the sourceand gate of transistor 1106 decreases to turn the transistor 1107 off.The voltage differential between the source and gate of transistor 1108increases to turn the transistor 1105 on. As transistor 1105 conducts,current flows from the voltage source 1101 through the transistor 1105to the output terminal 1131. The voltage that develops on the outputterminal 1130 can be used to shut off a battery charger or turn on afan, by way of example.

FIG. 12 is a circuit diagram depicting an exemplary embodiment of theconnection fault detection system of the computing device. Theconnection fault detection system includes an optocoupler 1205 with alight emitting diode 1210 and a transistor 1215, such as aphototransistor. One terminal of the light emitting diode 1210 connectsto ground (also referred to herein as “a node at a ground zero referencelevel”), such as a chassis of an electric vehicle. The other terminal ofthe light emitting diode 1210 connects to a current sink 1220. Oneterminal of the transistor 1215 connects to a voltage source 1225. Theother terminal connects to a node corresponding to the output 1228 ofthe optocoupler 1205 (also referred to herein as the “output node”).This node connects to a resistor 1230 that also connects to a groundzero reference level, which can be electrically isolated from thebattery pack 190. The current sink 1220 connects to the negativeterminal of a voltage source 1235. The positive terminal of the voltagesource 1235 connects to the negative terminal of at least one batteryunit 195 of the battery pack 190.

In operation, when none of the terminals of the battery units 195connect to ground, current does not flow through the light emittingdiode 1210 of the optocoupler 1205. The light emitting diode 1210 doesnot activate the transistor 1215, and the transistor 1215 does notconduct. Because the node 1228 corresponding to the optocoupler's 1205output is disconnected from the voltage source 1225, any charge at thenode drains through the resistor 1230 to ground. In this manner, theoptocoupler 1205 outputs a logic low signal, such as 0V, indicating thata connection fault has not been detected.

When a positive terminal of a battery unit 195 does connect to azero-voltage reference level, current flows through the light emittingdiode 1210 to the current sink 1220. The current activates thetransistor 1215 so the transistor 1215 conducts. Current flows from thevoltage source 1225, building charge at the output node 1228. Thus, theoptocoupler 1205 outputs a logic high signal indicating that aconnection fault has been detected. The logic high signal can be appliedto CPU 905, which can output a message to the display device warning anoperator of the battery unit management system of a potentiallyhazardous connection fault.

The voltage sources 1225, 1235 can have any voltage. For example,voltage source 1225 can provide 3.3V. Voltage source 1235 can provide5.0V. The current sink 1220 can limit the current flowing through itselfand the light emitting diode 1210 to any current, such as a minimum safelevel of current. For example, the current sink 1220 can limit thecurrent to 2 mA. The current sink 1220 can operate over a range ofvoltages of the battery pack 190, such as the voltages between thebattery pack's 190 positive and negative terminals. In some embodiments,this range can be from about 5V to about 500V. In some embodiments, thecurrent sink 1220 can operate at voltages that exceed the voltage at thepositive terminal of the battery pack 190.

FIG. 13 is another circuit diagram depicting an exemplary embodiment ofthe connection fault detection system of the computing device. Thisembodiment includes all the components described in reference to FIG.12. In addition, in this embodiment, the current sink 1220 includes avoltage source 1305, a first resistor 1310, a first transistor 1315, asecond transistor 1320, and a second resistor 1325. The voltage source1305 connects to one terminal of the first resistor 1310. The otherterminal of the first resistor 1310 connects to the gate of the firsttransistor 1315 and the emitter of the second transistor 1320. Thesource of the first transistor 1315 connects to the optocoupler 1205.The drain of the first transistor 1315 connects to the base of thesecond transistor 1320 and one terminal of the second resistor 1325. Theother terminal of the second resistor 1325 connects to the collector ofthe second transistor 1315 and the negative terminal of the voltagesource 1235.

In operation, current flows from the voltage source 1305 through thefirst resistor 1310 to activate the first transistor 1315 such that thefirst transistor 1315 conducts. When a terminal of a battery unit 195connects to ground, current flows through the optocoupler 1205, thefirst transistor 1315, and the second resistor 1325. The voltage thatdevelops across the second resistor 1325 activates the second transistor1320. As the second transistor conducts 1320, current is diverted fromthe gate of the first transistor 1315. The transistors 1315, 1320 andresistors 1310, 1325 reach equilibrium such that a constant currentflows through the first transistor 1315.

The transistors 1315 can be any type of transistor, such as ametal-oxide-semiconductor field-effect transistor (MOSFET), an insulatedgate bipolar transistor (IGBT), or a NPN transistor. In someembodiments, a 2N3904-type transistor is used for the second transistor1320.

FIG. 14 is a circuit diagram depicting an exemplary embodiment of thepack voltage and pack current input systems of the computing device. Thebattery pack 190 can connect to the systems at terminals 1401, 1402.Resistors 1405, 1406, 1407, 1408, 1409, 1410 can divide the battery pack190 voltage from 500V to 2V, by way of example. A capacitor 1411 canfilter the divided voltage, and an A/D converter 1415 can sample thevoltage. The A/D converter 1415 can transmit the voltage to a processorof the computing device 110, such as CPU 905. Optocouplers 1420, 1421,1422 can create an isolated communication interface between the A/Dconverter 1415 and the processor.

The voltage drop across a shunt can be input at terminal 1430. Theoperational amplifier 1435, resistors 1436, 1437, and capacitors 1438,1439, 1440 can form an amplifier to amplify the voltage drop. Becausethe amplifier has a fixed gain, such as 80, the amplified voltage mayexceed the capacity of the A/D converter 1445 that samples the voltage.Thus, resistors 1447, 1448 can form a voltage divider that divides theamplified voltage to a level the A/D converter 1445 can process. The A/Dconverter 1445 can sample the voltage and transmit the voltage to theprocessor, which can calculate the battery pack 190 current based on thevalue of the shunt. The A/D converter 1445 can use the samecommunication interface as the A/D converter 1415 to transmit itssampled voltage.

FIG. 15 is a circuit diagram depicting an exemplary embodiment 1500 ofthe central processing unit 905 of the computing device 110. Resistors1501-1519, capacitors 1520-1527, Zener diodes 1530-1532, and inverters1535-1537 condition the inputs and outputs for the central processingunit 1550.

FIG. 16 is a circuit diagram 1600 depicting an exemplary embodiment of apower supply that can be used with the battery management system 100.The power supply 1600 can be a step down switching voltage regulator.The components 1601-1616 can operate to produce a voltage, such as 5V or12V. In particular, component 1612 can be a linear voltage regulatorthat accepts a voltage produced by the other components of the systemand outputs a substantially constant 3.3V.

FIG. 17 is a circuit diagram 1700 depicting an exemplary embodiment ofanother power supply that can be used with the battery management system100. The power supply 1700 can be an isolated power supply. Components1701-1708 can operate as an oscillator that produces 40 KHz. Thetransformer with windings 1709-1711 can transfer energy produced by theoscillator to components 1712-1721, which can operate as positive andnegative half-wave rectifiers and a shunt regulator. The rectifiers andshunt regulator can operate to produce a substantially constant outputvoltage.

FIG. 18 is a circuit diagram depicting an exemplary embodiment of acontroller area network (CAN) interface used with the battery managementsystem 100. The interface can be used to connect a CPU 905 of acomputing device 110 with an external device via a CAN bus. A connector1801 can attach to a component of the computing device 110, such as theCPU board. The other connector 1880 can attach to a CAN bus thatconnects to an external device. The computing device 110 and externaldevice can communicate over the interface using a standard bus protocolsuch as a serial peripheral interface (SPI) protocol. In someembodiments, the devices can use handshaking signals, such as receiverbuffer full and interrupt.

The interface chip 1805 can operate in a non-isolated mode or anisolated mode. In the non-isolated mode, the interface chip 1805communicates with the bus buffer 1810 with data received, for example,from an external CAN-enabled device. In some embodiments, the bus buffer1810 can receive data from the bus ports 1880. The interface chip 1805can send a transmit signal to the buffer 1810 so the buffer 1810 outputsits data to the bus ports 1880. The interface chip 1805 can send areceive signal so the buffer 1810 outputs its data obtained from the busports to the interface chip 1805.

In the isolated mode, an isolator 1815 isolates the interface chip's1805 transmit and receive signals from a buffer 1820. The isolator 1815can be a magnetic isolator. An isolated power supply 1825 can use avoltage from a voltage regulator 1828 to provide power for the isolator1815 and buffer 1820. In some embodiments, the voltage regulator 1828receives a 12V signal and outputs a 5V signal.

In view of the structure, functions and apparatus of the systemdescribed herein, the present disclosure provides an efficient andintelligent battery management system. Having described certainembodiments of the battery management system, it will now becomeapparent to one of skill in the art that other embodiments incorporatingthe concepts of the disclosure may be used. Therefore, the inventionshould not be limited to certain embodiments, but should encompass thespirit and scope of the claims.

1. A battery management system comprising: a computing device with anoutput data request port and an input data port; and first and secondbattery unit monitoring modules, each battery unit monitoring moduleconnected to the input data port of the computing device; in which thefirst battery unit monitoring module is configured to, in response to adata request from the output data request port of the computing device,transmit data of the first battery unit to the input data port of thecomputing device, and transmit a data request to the second battery unitmonitoring module; and in which the second battery unit monitoringmodule is configured to, in response to the data request from the firstbattery unit monitoring module, transmit data of the second battery unitto the input data port of the computing device.
 2. The batterymanagement system of claim 1, wherein the first battery unit monitoringmodule connects to a first battery unit for an electric vehicle.
 3. Thebattery management system of claim 1, further comprising wiringconnecting the computing device to the first and second battery unitmonitoring modules, wherein the second battery unit monitoring module isoriented in an opposite direction from the first battery unit monitoringmodule.
 4. The battery management system of claim 1, wherein the firstbattery unit monitoring module comprises an analog-to-digital converterthat measures a voltage of the first battery unit.
 5. The batterymanagement system of claim 1, wherein the first battery unit monitoringmodule comprises a temperature monitoring device that measures atemperature of the first battery unit.
 6. The battery management systemof claim 1, wherein the data of the first battery unit is a voltage anda temperature of the first battery unit.
 7. The battery managementsystem of claim 6, wherein the data of the second battery unit is avoltage and a temperature of the second battery unit.
 8. The batterymanagement system of claim 1, wherein the computing device is configuredto scan the first and second battery unit monitoring modules todetermine a number of battery unit monitoring modules in the batterymanagement system.
 9. The battery management system of claim 1, whereinthe computing device is configured to transmit a second data request tothe first battery unit monitoring module after the computing device hasnot received data on the input data port for a predetermined period oftime.
 10. The battery management system of claim 9, wherein thepredetermined period of time is 20 ms.
 11. The battery management systemof claim 1, wherein the computing device further comprises ananalog-to-digital convertor that measures a voltage across the first andsecond battery units.
 12. The battery management system of claim 1,wherein the computing device further comprises an analog-to-digitalconvertor that measures a current flowing in the first and secondbattery units.
 13. The battery management system of claim 1, wherein thecomputing device is configured to output an alarm when an errorcondition is detected.
 14. The battery management system of claim 13,wherein the error condition is a high voltage condition, a low voltagecondition, a high current condition, a high temperature condition, or aconnection fault condition.
 15. The battery management system of claim1, wherein the computing device is configured to shut off a batterycharger when the computing device detects a high voltage conditionacross the first and second battery units.
 16. The battery managementsystem of claim 1, wherein the computing device is configured to shutoff a load when the computing device detects a low voltage conditionacross the first and second battery units.
 17. The battery managementsystem of claim 1, further comprising a monitor that is configured todisplay the data of the first and second battery units.
 18. The batterymanagement system of claim 1, further comprising a connection faultdetector that is configured to detect a connection between a chassis andthe first and second battery units.
 19. The battery management system ofclaim 1, further comprising a battery unit balancing system that isconfigured to balance the first battery unit.
 20. A battery managementsystem comprising: a computing device with a first output data requestport and an input data port; a first battery unit monitoring module witha first input data request port connected to the output data requestport of the controller, a first output data port connected to the inputdata port of the controller, and a second output data request port; anda second battery unit monitoring module with a second input data requestport connected to the second output data request port of the firstbattery unit monitoring module, and a second output data port connectedto the input data port of the controller.
 21. A method of managing abattery comprising: transmitting, by a computing device, a first datarequest to a first battery unit monitoring module; transmitting, by thefirst battery unit monitoring module, data of a first battery unit to aninput data port of the computing device in response to the first datarequest; transmitting, by the first battery unit monitoring module, asecond data request to a second battery unit monitoring module; andtransmitting, by the second battery unit monitoring module, data of asecond battery unit to the input data port of the computing device inresponse to the second data request.